from queue import LifoQueue
#python中内置的栈LifoQueue  有进栈和出栈操作，主要用于并发环境
'''
queue队列是一个线程安全的包，这个包里面有很多的结构，
比如栈 LifoQueue ，如果要在并发环境下使用的话，
最好使用这个结构，因为如果栈为空的情况下，去弹出栈顶元素的话，
会出现阻塞现象，知道栈不为空为止

#注意：这个栈在空栈出栈时会阻塞，栈满时进栈会阻塞

'''
s = LifoQueue(2)#可以设置栈的大小
#put(self, item, block=True, timeout=None)block表示是否阻塞，timeout表示等待时间
s.put(1)
s.put(2)
print(s.get())
s.put(3)
print(s.get())#get(self, block=True, timeout=None):
print(s.get())
print(s.qsize())#判断栈的大小
print(s.full())
print(s.empty())
print(s.join())
